16x16 hard t11d3p1.txt
Order 4: digits 16; houses 48, cells 256.
Grid.grid1: initial copying
pending={a2, a4, a5, b2, b6, b10, b12, b13, c6, c7, d10, d15, e3, e7, e16, f3, f5, f9, f12, f13, g7, g8, h3, h4, h5, h11, i3, j1, j5, j9, j11, j15, k5, k6, k8, k14, l1, l4, l5, l9, l11, l13, m3, m8, m11, m15, n6, o6, o9, o10, o12, o16, p2, p3, p8, p9, p14, p16}
deduce.grid1: naked-singles
deduce.grid1: hidden-singles
deduce.grid1.rowo. o11 is 6 by hidden-single.
pending={o11}
deduce.grid1: naked-singles
deduce.grid1: hidden-singles
deduce.grid1.rown. n16 is 6 by hidden-single.
pending={n16}
deduce.grid1: naked-singles
deduce.grid1: hidden-singles
deduce.grid1.col6. a6 is 6 by hidden-single.
pending={a6}
deduce.grid1: naked-singles
deduce.grid1: hidden-singles
deduce.grid1: naked-pairs
two's heap=.
grid1
|
| 1
| 2
| 3
| 4
| 5
| 6
| 7
| 8
| 9
| 10
| 11
| 12
| 13
| 14
| 15
| 16
|
| a
|
| 2
|
| 3
| 5
| 6
|
|
|
|
|
|
|
|
|
|
|
| b
|
| 6
|
|
|
| 2
|
|
|
| 8
|
| 3
| 4
|
|
|
|
| c
|
|
|
|
|
| 4
| 8
|
|
|
|
|
|
|
|
|
|
| d
|
|
|
|
|
|
|
|
|
| 2
|
|
|
|
| 6
|
|
| e
|
|
| 8
|
|
|
| 4
|
|
|
|
|
|
|
|
| 1
|
| f
|
|
| 5
|
| 3
|
|
|
| 9
|
|
| 1
| 6
|
|
|
|
| g
|
|
|
|
|
|
| 6
| 1
|
|
|
|
|
|
|
|
|
| h
|
|
| 1
| 9
| 8
|
|
|
|
|
| 4
|
|
|
|
|
|
| i
|
|
| 7
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| j
| 2
|
|
|
| 6
|
|
|
| 3
|
| 7
|
|
|
| 5
|
|
| k
|
|
|
|
| 4
| 8
|
| 5
|
|
|
|
|
| 6
|
|
|
| l
| 3
|
|
| 8
| 1
|
|
|
| 6
|
| 9
|
| 2
|
|
|
|
| m
|
|
| 6
|
|
|
|
| 8
|
|
| 1
|
|
|
| 2
|
|
| n
|
|
|
|
|
| 1
|
|
|
|
|
|
|
|
|
| 6
|
| o
|
|
|
|
|
| 3
|
|
| 2
| 5
| 6
| 7
|
|
|
| 8
|
| p
|
| 4
| 2
|
|
|
|
| 6
| 8
|
|
|
|
| 1
|
| 5
|
backtrack.grid1 → grid2: a11 guess 10 ∈ {10|11|12|13|14|15|16}
pending={a11}
deduce.grid2: naked-singles
deduce.grid2: hidden-singles
deduce.grid2: naked-pairs
two's heap=.
grid2
|
| 1
| 2
| 3
| 4
| 5
| 6
| 7
| 8
| 9
| 10
| 11
| 12
| 13
| 14
| 15
| 16
|
| a
|
| 2
|
| 3
| 5
| 6
|
|
|
|
| 10
|
|
|
|
|
|
| b
|
| 6
|
|
|
| 2
|
|
|
| 8
|
| 3
| 4
|
|
|
|
| c
|
|
|
|
|
| 4
| 8
|
|
|
|
|
|
|
|
|
|
| d
|
|
|
|
|
|
|
|
|
| 2
|
|
|
|
| 6
|
|
| e
|
|
| 8
|
|
|
| 4
|
|
|
|
|
|
|
|
| 1
|
| f
|
|
| 5
|
| 3
|
|
|
| 9
|
|
| 1
| 6
|
|
|
|
| g
|
|
|
|
|
|
| 6
| 1
|
|
|
|
|
|
|
|
|
| h
|
|
| 1
| 9
| 8
|
|
|
|
|
| 4
|
|
|
|
|
|
| i
|
|
| 7
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| j
| 2
|
|
|
| 6
|
|
|
| 3
|
| 7
|
|
|
| 5
|
|
| k
|
|
|
|
| 4
| 8
|
| 5
|
|
|
|
|
| 6
|
|
|
| l
| 3
|
|
| 8
| 1
|
|
|
| 6
|
| 9
|
| 2
|
|
|
|
| m
|
|
| 6
|
|
|
|
| 8
|
|
| 1
|
|
|
| 2
|
|
| n
|
|
|
|
|
| 1
|
|
|
|
|
|
|
|
|
| 6
|
| o
|
|
|
|
|
| 3
|
|
| 2
| 5
| 6
| 7
|
|
|
| 8
|
| p
|
| 4
| 2
|
|
|
|
| 6
| 8
|
|
|
|
| 1
|
| 5
|
backtrack.grid2 → grid3: b11 guess 5 ∈ {5|11|12|13|14|15|16}
pending={b11}
deduce.grid3: naked-singles
deduce.grid3: hidden-singles
deduce.grid3: naked-pairs
two's heap=.
grid3
|
| 1
| 2
| 3
| 4
| 5
| 6
| 7
| 8
| 9
| 10
| 11
| 12
| 13
| 14
| 15
| 16
|
| a
|
| 2
|
| 3
| 5
| 6
|
|
|
|
| 10
|
|
|
|
|
|
| b
|
| 6
|
|
|
| 2
|
|
|
| 8
| 5
| 3
| 4
|
|
|
|
| c
|
|
|
|
|
| 4
| 8
|
|
|
|
|
|
|
|
|
|
| d
|
|
|
|
|
|
|
|
|
| 2
|
|
|
|
| 6
|
|
| e
|
|
| 8
|
|
|
| 4
|
|
|
|
|
|
|
|
| 1
|
| f
|
|
| 5
|
| 3
|
|
|
| 9
|
|
| 1
| 6
|
|
|
|
| g
|
|
|
|
|
|
| 6
| 1
|
|
|
|
|
|
|
|
|
| h
|
|
| 1
| 9
| 8
|
|
|
|
|
| 4
|
|
|
|
|
|
| i
|
|
| 7
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| j
| 2
|
|
|
| 6
|
|
|
| 3
|
| 7
|
|
|
| 5
|
|
| k
|
|
|
|
| 4
| 8
|
| 5
|
|
|
|
|
| 6
|
|
|
| l
| 3
|
|
| 8
| 1
|
|
|
| 6
|
| 9
|
| 2
|
|
|
|
| m
|
|
| 6
|
|
|
|
| 8
|
|
| 1
|
|
|
| 2
|
|
| n
|
|
|
|
|
| 1
|
|
|
|
|
|
|
|
|
| 6
|
| o
|
|
|
|
|
| 3
|
|
| 2
| 5
| 6
| 7
|
|
|
| 8
|
| p
|
| 4
| 2
|
|
|
|
| 6
| 8
|
|
|
|
| 1
|
| 5
|
backtrack.grid3 → grid4: c11 guess 11 ∈ {11|12|13|14|15|16}
pending={c11}
deduce.grid4: naked-singles
deduce.grid4: hidden-singles
deduce.grid4: naked-pairs
two's heap=.
grid4
|
| 1
| 2
| 3
| 4
| 5
| 6
| 7
| 8
| 9
| 10
| 11
| 12
| 13
| 14
| 15
| 16
|
| a
|
| 2
|
| 3
| 5
| 6
|
|
|
|
| 10
|
|
|
|
|
|
| b
|
| 6
|
|
|
| 2
|
|
|
| 8
| 5
| 3
| 4
|
|
|
|
| c
|
|
|
|
|
| 4
| 8
|
|
|
| 11
|
|
|
|
|
|
| d
|
|
|
|
|
|
|
|
|
| 2
|
|
|
|
| 6
|
|
| e
|
|
| 8
|
|
|
| 4
|
|
|
|
|
|
|
|
| 1
|
| f
|
|
| 5
|
| 3
|
|
|
| 9
|
|
| 1
| 6
|
|
|
|
| g
|
|
|
|
|
|
| 6
| 1
|
|
|
|
|
|
|
|
|
| h
|
|
| 1
| 9
| 8
|
|
|
|
|
| 4
|
|
|
|
|
|
| i
|
|
| 7
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| j
| 2
|
|
|
| 6
|
|
|
| 3
|
| 7
|
|
|
| 5
|
|
| k
|
|
|
|
| 4
| 8
|
| 5
|
|
|
|
|
| 6
|
|
|
| l
| 3
|
|
| 8
| 1
|
|
|
| 6
|
| 9
|
| 2
|
|
|
|
| m
|
|
| 6
|
|
|
|
| 8
|
|
| 1
|
|
|
| 2
|
|
| n
|
|
|
|
|
| 1
|
|
|
|
|
|
|
|
|
| 6
|
| o
|
|
|
|
|
| 3
|
|
| 2
| 5
| 6
| 7
|
|
|
| 8
|
| p
|
| 4
| 2
|
|
|
|
| 6
| 8
|
|
|
|
| 1
|
| 5
|
backtrack.grid4 → grid5: d11 guess 12 ∈ {12|13|14|15|16}
pending={d11}
deduce.grid5: naked-singles
deduce.grid5: hidden-singles
deduce.grid5: naked-pairs
two's heap=.
grid5
|
| 1
| 2
| 3
| 4
| 5
| 6
| 7
| 8
| 9
| 10
| 11
| 12
| 13
| 14
| 15
| 16
|
| a
|
| 2
|
| 3
| 5
| 6
|
|
|
|
| 10
|
|
|
|
|
|
| b
|
| 6
|
|
|
| 2
|
|
|
| 8
| 5
| 3
| 4
|
|
|
|
| c
|
|
|
|
|
| 4
| 8
|
|
|
| 11
|
|
|
|
|
|
| d
|
|
|
|
|
|
|
|
|
| 2
| 12
|
|
|
| 6
|
|
| e
|
|
| 8
|
|
|
| 4
|
|
|
|
|
|
|
|
| 1
|
| f
|
|
| 5
|
| 3
|
|
|
| 9
|
|
| 1
| 6
|
|
|
|
| g
|
|
|
|
|
|
| 6
| 1
|
|
|
|
|
|
|
|
|
| h
|
|
| 1
| 9
| 8
|
|
|
|
|
| 4
|
|
|
|
|
|
| i
|
|
| 7
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| j
| 2
|
|
|
| 6
|
|
|
| 3
|
| 7
|
|
|
| 5
|
|
| k
|
|
|
|
| 4
| 8
|
| 5
|
|
|
|
|
| 6
|
|
|
| l
| 3
|
|
| 8
| 1
|
|
|
| 6
|
| 9
|
| 2
|
|
|
|
| m
|
|
| 6
|
|
|
|
| 8
|
|
| 1
|
|
|
| 2
|
|
| n
|
|
|
|
|
| 1
|
|
|
|
|
|
|
|
|
| 6
|
| o
|
|
|
|
|
| 3
|
|
| 2
| 5
| 6
| 7
|
|
|
| 8
|
| p
|
| 4
| 2
|
|
|
|
| 6
| 8
|
|
|
|
| 1
|
| 5
|
backtrack.grid5 → grid6: k11 guess 2 ∈ {2|13|14|15|16}
pending={k11}
deduce.grid6: naked-singles
deduce.grid6: hidden-singles
deduce.grid6: naked-pairs
two's heap=.
grid6
|
| 1
| 2
| 3
| 4
| 5
| 6
| 7
| 8
| 9
| 10
| 11
| 12
| 13
| 14
| 15
| 16
|
| a
|
| 2
|
| 3
| 5
| 6
|
|
|
|
| 10
|
|
|
|
|
|
| b
|
| 6
|
|
|
| 2
|
|
|
| 8
| 5
| 3
| 4
|
|
|
|
| c
|
|
|
|
|
| 4
| 8
|
|
|
| 11
|
|
|
|
|
|
| d
|
|
|
|
|
|
|
|
|
| 2
| 12
|
|
|
| 6
|
|
| e
|
|
| 8
|
|
|
| 4
|
|
|
|
|
|
|
|
| 1
|
| f
|
|
| 5
|
| 3
|
|
|
| 9
|
|
| 1
| 6
|
|
|
|
| g
|
|
|
|
|
|
| 6
| 1
|
|
|
|
|
|
|
|
|
| h
|
|
| 1
| 9
| 8
|
|
|
|
|
| 4
|
|
|
|
|
|
| i
|
|
| 7
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| j
| 2
|
|
|
| 6
|
|
|
| 3
|
| 7
|
|
|
| 5
|
|
| k
|
|
|
|
| 4
| 8
|
| 5
|
|
| 2
|
|
| 6
|
|
|
| l
| 3
|
|
| 8
| 1
|
|
|
| 6
|
| 9
|
| 2
|
|
|
|
| m
|
|
| 6
|
|
|
|
| 8
|
|
| 1
|
|
|
| 2
|
|
| n
|
|
|
|
|
| 1
|
|
|
|
|
|
|
|
|
| 6
|
| o
|
|
|
|
|
| 3
|
|
| 2
| 5
| 6
| 7
|
|
|
| 8
|
| p
|
| 4
| 2
|
|
|
|
| 6
| 8
|
|
|
|
| 1
|
| 5
|
backtrack.grid6 → grid7: e11 guess 3 ∈ {3|13|14|15|16}
pending={e11}
deduce.grid7: naked-singles
deduce.grid7: hidden-singles
deduce.grid7: naked-pairs
two's heap=.
grid7
|
| 1
| 2
| 3
| 4
| 5
| 6
| 7
| 8
| 9
| 10
| 11
| 12
| 13
| 14
| 15
| 16
|
| a
|
| 2
|
| 3
| 5
| 6
|
|
|
|
| 10
|
|
|
|
|
|
| b
|
| 6
|
|
|
| 2
|
|
|
| 8
| 5
| 3
| 4
|
|
|
|
| c
|
|
|
|
|
| 4
| 8
|
|
|
| 11
|
|
|
|
|
|
| d
|
|
|
|
|
|
|
|
|
| 2
| 12
|
|
|
| 6
|
|
| e
|
|
| 8
|
|
|
| 4
|
|
|
| 3
|
|
|
|
| 1
|
| f
|
|
| 5
|
| 3
|
|
|
| 9
|
|
| 1
| 6
|
|
|
|
| g
|
|
|
|
|
|
| 6
| 1
|
|
|
|
|
|
|
|
|
| h
|
|
| 1
| 9
| 8
|
|
|
|
|
| 4
|
|
|
|
|
|
| i
|
|
| 7
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| j
| 2
|
|
|
| 6
|
|
|
| 3
|
| 7
|
|
|
| 5
|
|
| k
|
|
|
|
| 4
| 8
|
| 5
|
|
| 2
|
|
| 6
|
|
|
| l
| 3
|
|
| 8
| 1
|
|
|
| 6
|
| 9
|
| 2
|
|
|
|
| m
|
|
| 6
|
|
|
|
| 8
|
|
| 1
|
|
|
| 2
|
|
| n
|
|
|
|
|
| 1
|
|
|
|
|
|
|
|
|
| 6
|
| o
|
|
|
|
|
| 3
|
|
| 2
| 5
| 6
| 7
|
|
|
| 8
|
| p
|
| 4
| 2
|
|
|
|
| 6
| 8
|
|
|
|
| 1
|
| 5
|
backtrack.grid7 → grid8: n11 guess 13 ∈ {13|14|15|16}
pending={n11}
deduce.grid8: naked-singles
deduce.grid8: hidden-singles
deduce.grid8: naked-pairs
two's heap=.
grid8
|
| 1
| 2
| 3
| 4
| 5
| 6
| 7
| 8
| 9
| 10
| 11
| 12
| 13
| 14
| 15
| 16
|
| a
|
| 2
|
| 3
| 5
| 6
|
|
|
|
| 10
|
|
|
|
|
|
| b
|
| 6
|
|
|
| 2
|
|
|
| 8
| 5
| 3
| 4
|
|
|
|
| c
|
|
|
|
|
| 4
| 8
|
|
|
| 11
|
|
|
|
|
|
| d
|
|
|
|
|
|
|
|
|
| 2
| 12
|
|
|
| 6
|
|
| e
|
|
| 8
|
|
|
| 4
|
|
|
| 3
|
|
|
|
| 1
|
| f
|
|
| 5
|
| 3
|
|
|
| 9
|
|
| 1
| 6
|
|
|
|
| g
|
|
|
|
|
|
| 6
| 1
|
|
|
|
|
|
|
|
|
| h
|
|
| 1
| 9
| 8
|
|
|
|
|
| 4
|
|
|
|
|
|
| i
|
|
| 7
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| j
| 2
|
|
|
| 6
|
|
|
| 3
|
| 7
|
|
|
| 5
|
|
| k
|
|
|
|
| 4
| 8
|
| 5
|
|
| 2
|
|
| 6
|
|
|
| l
| 3
|
|
| 8
| 1
|
|
|
| 6
|
| 9
|
| 2
|
|
|
|
| m
|
|
| 6
|
|
|
|
| 8
|
|
| 1
|
|
|
| 2
|
|
| n
|
|
|
|
|
| 1
|
|
|
|
| 13
|
|
|
|
| 6
|
| o
|
|
|
|
|
| 3
|
|
| 2
| 5
| 6
| 7
|
|
|
| 8
|
| p
|
| 4
| 2
|
|
|
|
| 6
| 8
|
|
|
|
| 1
|
| 5
|
backtrack.grid8 → grid9: p11 guess 14 ∈ {14|15|16}
pending={p11}
deduce.grid9: naked-singles
deduce.grid9: hidden-singles
deduce.grid9: naked-pairs
two's heap=.
grid9
|
| 1
| 2
| 3
| 4
| 5
| 6
| 7
| 8
| 9
| 10
| 11
| 12
| 13
| 14
| 15
| 16
|
| a
|
| 2
|
| 3
| 5
| 6
|
|
|
|
| 10
|
|
|
|
|
|
| b
|
| 6
|
|
|
| 2
|
|
|
| 8
| 5
| 3
| 4
|
|
|
|
| c
|
|
|
|
|
| 4
| 8
|
|
|
| 11
|
|
|
|
|
|
| d
|
|
|
|
|
|
|
|
|
| 2
| 12
|
|
|
| 6
|
|
| e
|
|
| 8
|
|
|
| 4
|
|
|
| 3
|
|
|
|
| 1
|
| f
|
|
| 5
|
| 3
|
|
|
| 9
|
|
| 1
| 6
|
|
|
|
| g
|
|
|
|
|
|
| 6
| 1
|
|
|
|
|
|
|
|
|
| h
|
|
| 1
| 9
| 8
|
|
|
|
|
| 4
|
|
|
|
|
|
| i
|
|
| 7
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| j
| 2
|
|
|
| 6
|
|
|
| 3
|
| 7
|
|
|
| 5
|
|
| k
|
|
|
|
| 4
| 8
|
| 5
|
|
| 2
|
|
| 6
|
|
|
| l
| 3
|
|
| 8
| 1
|
|
|
| 6
|
| 9
|
| 2
|
|
|
|
| m
|
|
| 6
|
|
|
|
| 8
|
|
| 1
|
|
|
| 2
|
|
| n
|
|
|
|
|
| 1
|
|
|
|
| 13
|
|
|
|
| 6
|
| o
|
|
|
|
|
| 3
|
|
| 2
| 5
| 6
| 7
|
|
|
| 8
|
| p
|
| 4
| 2
|
|
|
|
| 6
| 8
|
| 14
|
|
| 1
|
| 5
|
backtrack.grid9 → grid10: f11 guess 8 ∈ {8|15|16}
pending={f11}
deduce.grid10: naked-singles
deduce.grid10: hidden-singles
deduce.grid10: naked-pairs
two's heap=g11 {15|16}, i11 {15|16}.
grid10
|
| 1
| 2
| 3
| 4
| 5
| 6
| 7
| 8
| 9
| 10
| 11
| 12
| 13
| 14
| 15
| 16
|
| a
|
| 2
|
| 3
| 5
| 6
|
|
|
|
| 10
|
|
|
|
|
|
| b
|
| 6
|
|
|
| 2
|
|
|
| 8
| 5
| 3
| 4
|
|
|
|
| c
|
|
|
|
|
| 4
| 8
|
|
|
| 11
|
|
|
|
|
|
| d
|
|
|
|
|
|
|
|
|
| 2
| 12
|
|
|
| 6
|
|
| e
|
|
| 8
|
|
|
| 4
|
|
|
| 3
|
|
|
|
| 1
|
| f
|
|
| 5
|
| 3
|
|
|
| 9
|
| 8
| 1
| 6
|
|
|
|
| g
|
|
|
|
|
|
| 6
| 1
|
|
|
|
|
|
|
|
|
| h
|
|
| 1
| 9
| 8
|
|
|
|
|
| 4
|
|
|
|
|
|
| i
|
|
| 7
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| j
| 2
|
|
|
| 6
|
|
|
| 3
|
| 7
|
|
|
| 5
|
|
| k
|
|
|
|
| 4
| 8
|
| 5
|
|
| 2
|
|
| 6
|
|
|
| l
| 3
|
|
| 8
| 1
|
|
|
| 6
|
| 9
|
| 2
|
|
|
|
| m
|
|
| 6
|
|
|
|
| 8
|
|
| 1
|
|
|
| 2
|
|
| n
|
|
|
|
|
| 1
|
|
|
|
| 13
|
|
|
|
| 6
|
| o
|
|
|
|
|
| 3
|
|
| 2
| 5
| 6
| 7
|
|
|
| 8
|
| p
|
| 4
| 2
|
|
|
|
| 6
| 8
|
| 14
|
|
| 1
|
| 5
|
backtrack.grid10 → grid11: g11 guess 15 ∈ {15|16}
…
backtrack.grid95 → grid96: e2 guess 14 ∈ {14|16}
pending={e2}
deduce.grid96: naked-singles
- f2 is 16 by naked-single.
pending={f2}
- f7 is 14 by naked-single.
pending={f7}
deduce.grid96: hidden-singles
deduce.grid96: naked-pairs
two's heap=p6 {7|9}, l15 {10|12}, m2 {9|12}, j14 {9|16}, l8 {10|13}, m13 {7|16}, j16 {13|14}, e6 {12|16}, l14 {12|16}, j3 {11|16}, i16 {13|14}, e5 {12|16}, o13 {10|16}, k3 {12|16}.
Naked-pair {13|14} in cells {i16, j16} contained within {col16, box12}, updating cells {j14, k15, l14, l15}:
grid96
|
| 1
| 2
| 3
| 4
| 5
| 6
| 7
| 8
| 9
| 10
| 11
| 12
| 13
| 14
| 15
| 16
|
| a
| 12
| 2
| 13
| 3
| 5
| 6
| 15
| 16
| 1
| 7
| 10
| 4
| 8
| 11
| 14
| 9
|
| b
| 14
| 6
| 15
| 16
| 9
| 2
| 11
| 12
| 13
| 8
| 5
| 3
| 4
| 7
| 1
| 10
|
| c
| 5
| 1
| 9
| 10
| 7
| 4
| 8
| 3
| 14
| 15
| 11
| 6
| 12
| 2
| 13
| 16
|
| d
| 8
| 11
| 4
| 7
| 10
| 13
| 1
| 14
| 16
| 2
| 12
| 9
| 5
| 15
| 6
| 3
|
| e
| 15
| 14
| 8
| 11
|
|
| 4
| 9
| 5
| 6
| 3
| 2
| 13
| 10
| 7
| 1
|
| f
| 13
| 16
| 5
| 12
| 3
| 15
| 14
| 7
| 9
| 10
| 8
| 1
| 6
| 4
| 11
| 2
|
| g
| 4
| 3
| 10
| 2
| 13
| 5
| 6
| 1
| 7
| 11
| 15
| 14
| 9
| 8
| 16
| 12
|
| h
| 6
| 7
| 1
| 9
| 8
| 10
| 2
| 11
| 12
| 13
| 4
| 16
| 14
| 5
| 3
| 15
|
| i
| 1
|
| 7
| 6
|
|
|
|
| 10
| 4
| 16
| 5
| 11
| 3
| 8
|
|
| j
| 2
|
|
| 4
| 6
|
|
|
| 3
| 12
| 7
| 8
| 1
|
| 5
|
|
| k
|
|
|
| 14
| 4
| 8
| 3
| 5
| 11
| 1
| 2
| 13
| 15
| 6
|
| 7
|
| l
| 3
| 5
|
| 8
| 1
|
|
|
| 6
| 14
| 9
| 15
| 2
|
|
| 4
|
| m
|
|
| 6
| 15
|
|
| 5
| 8
| 4
| 3
| 1
| 10
|
| 13
| 2
| 11
|
| n
|
| 8
| 3
| 5
|
| 1
|
|
| 15
| 9
| 13
| 11
|
| 14
|
| 6
|
| o
| 11
|
| 14
| 1
|
| 3
|
|
| 2
| 5
| 6
| 7
|
|
|
| 8
|
| p
|
| 4
| 2
| 13
| 11
|
|
| 6
| 8
| 16
| 14
| 12
| 3
| 1
| 15
| 5
|
backtrack.grid96 → grid97: e5 guess 12 ∈ {12|16}
pending={e5}
deduce.grid97: naked-singles
- e6 is 16 by naked-single.
pending={e6}
deduce.grid97: hidden-singles
deduce.grid97: naked-pairs
two's heap=p6 {7|9}, l15 {10|12}, m2 {9|12}, l8 {10|13}, m13 {7|16}, n5 {2|16}, i16 {13|14}, j3 {11|16}, j16 {13|14}, m5 {14|16}, k3 {12|16}, j14 {9|16}, o5 {15|16}, l14 {12|16}, o13 {10|16}.
Naked-pair {13|14} in cells {i16, j16} contained within {col16, box12}, updating cells {j14, k15, l14, l15}:
grid97
|
| 1
| 2
| 3
| 4
| 5
| 6
| 7
| 8
| 9
| 10
| 11
| 12
| 13
| 14
| 15
| 16
|
| a
| 12
| 2
| 13
| 3
| 5
| 6
| 15
| 16
| 1
| 7
| 10
| 4
| 8
| 11
| 14
| 9
|
| b
| 14
| 6
| 15
| 16
| 9
| 2
| 11
| 12
| 13
| 8
| 5
| 3
| 4
| 7
| 1
| 10
|
| c
| 5
| 1
| 9
| 10
| 7
| 4
| 8
| 3
| 14
| 15
| 11
| 6
| 12
| 2
| 13
| 16
|
| d
| 8
| 11
| 4
| 7
| 10
| 13
| 1
| 14
| 16
| 2
| 12
| 9
| 5
| 15
| 6
| 3
|
| e
| 15
| 14
| 8
| 11
| 12
| 16
| 4
| 9
| 5
| 6
| 3
| 2
| 13
| 10
| 7
| 1
|
| f
| 13
| 16
| 5
| 12
| 3
| 15
| 14
| 7
| 9
| 10
| 8
| 1
| 6
| 4
| 11
| 2
|
| g
| 4
| 3
| 10
| 2
| 13
| 5
| 6
| 1
| 7
| 11
| 15
| 14
| 9
| 8
| 16
| 12
|
| h
| 6
| 7
| 1
| 9
| 8
| 10
| 2
| 11
| 12
| 13
| 4
| 16
| 14
| 5
| 3
| 15
|
| i
| 1
|
| 7
| 6
|
|
|
|
| 10
| 4
| 16
| 5
| 11
| 3
| 8
|
|
| j
| 2
|
|
| 4
| 6
|
|
|
| 3
| 12
| 7
| 8
| 1
|
| 5
|
|
| k
|
|
|
| 14
| 4
| 8
| 3
| 5
| 11
| 1
| 2
| 13
| 15
| 6
|
| 7
|
| l
| 3
| 5
|
| 8
| 1
|
|
|
| 6
| 14
| 9
| 15
| 2
|
|
| 4
|
| m
|
|
| 6
| 15
|
|
| 5
| 8
| 4
| 3
| 1
| 10
|
| 13
| 2
| 11
|
| n
|
| 8
| 3
| 5
|
| 1
|
|
| 15
| 9
| 13
| 11
|
| 14
|
| 6
|
| o
| 11
|
| 14
| 1
|
| 3
|
|
| 2
| 5
| 6
| 7
|
|
|
| 8
|
| p
|
| 4
| 2
| 13
| 11
|
|
| 6
| 8
| 16
| 14
| 12
| 3
| 1
| 15
| 5
|
backtrack.grid97 → grid98: i16 guess 13 ∈ {13|14}
pending={i16}
deduce.grid98: naked-singles
- j16 is 14 by naked-single.
pending={j16}
deduce.grid98: hidden-singles
deduce.grid98.col2. j2 is 13 by hidden-single.
pending={j2}
deduce.grid98: naked-singles
deduce.grid98: hidden-singles
deduce.grid98.rowj. j8 is 15 by hidden-single.
pending={j8}
deduce.grid98: naked-singles
- i8 is 2 by naked-single.
pending={i8}
- i5 is 14 by naked-single.
pending={i5}
- m5 is 16 by naked-single.
pending={m5}
- m13 is 7 by naked-single.
pending={m13}
- m1 is 9 by naked-single.
pending={m1}
- m2 is 12 by naked-single.
pending={m2}
- m6 is 14 by naked-single.
pending={m6}
- n5 is 2 by naked-single.
pending={n5}
- o2 is 10 by naked-single.
pending={o2}
- k2 is 9 by naked-single.
pending={k2}
- i2 is 15 by naked-single.
pending={i2}
- o5 is 15 by naked-single.
pending={o5}
- o13 is 16 by naked-single.
pending={o13}
- n13 is 10 by naked-single.
pending={n13}
- n8 is 4 by naked-single.
pending={n8}
- n15 is 12 by naked-single.
pending={n15}
- k15 is 10 by naked-single.
pending={k15}
- k1 is 16 by naked-single.
pending={k1}
- j3 is 11 by naked-single.
pending={j3}
- j6 is 9 by naked-single.
pending={j6}
- i6 is 12 by naked-single.
pending={i6}
grid98 didn't work: naked-singles ran out of candidates.
…backtrack.grid97 again
backtrack.grid97 → grid99: i16 guess 14 ∈ {13|14}
pending={i16}
deduce.grid99: naked-singles
- j16 is 13 by naked-single.
pending={j16}
deduce.grid99: hidden-singles
deduce.grid99.rowj. j6 is 14 by hidden-single.
pending={j6}
deduce.grid99: naked-singles
deduce.grid99: hidden-singles
deduce.grid99.rowj. j3 is 11 by hidden-single.
pending={j3}
deduce.grid99: naked-singles
deduce.grid99: hidden-singles
deduce.grid99.rowl. l6 is 11 by hidden-single.
pending={l6}
deduce.grid99: naked-singles
deduce.grid99: hidden-singles
deduce.grid99.rowl. l7 is 7 by hidden-single.
pending={l7}
deduce.grid99: naked-singles
deduce.grid99: hidden-singles
deduce.grid99.rowl. l8 is 13 by hidden-single.
pending={l8}
deduce.grid99: naked-singles
deduce.grid99: hidden-singles
deduce.grid99.rowi. i2 is 13 by hidden-single.
pending={i2}
deduce.grid99: naked-singles
deduce.grid99: hidden-singles
deduce.grid99.rowl. l15 is 10 by hidden-single.
pending={l15}
deduce.grid99: naked-singles
deduce.grid99: hidden-singles
deduce.grid99.rowm. m5 is 14 by hidden-single.
pending={m5}
deduce.grid99: naked-singles
deduce.grid99: hidden-singles
deduce.grid99.rowo. o7 is 13 by hidden-single.
pending={o7}
deduce.grid99: naked-singles
deduce.grid99: hidden-singles
deduce.grid99.col2. j2 is 15 by hidden-single.
pending={j2}
deduce.grid99: naked-singles
- j8 is 10 by naked-single.
pending={j8}
deduce.grid99: hidden-singles
deduce.grid99.box10. j7 is 16 by hidden-single.
pending={j7}
deduce.grid99: naked-singles
- j14 is 9 by naked-single.
pending={j14}
- k15 is 12 by naked-single.
pending={k15}
- k3 is 16 by naked-single.
pending={k3}
- l3 is 12 by naked-single.
pending={l3}
- l14 is 16 by naked-single.
pending={l14}
- n15 is 4 by naked-single.
pending={n15}
- n8 is 2 by naked-single.
pending={n8}
- i8 is 15 by naked-single.
pending={i8}
- i5 is 2 by naked-single.
pending={i5}
- n5 is 16 by naked-single.
pending={n5}
- o5 is 15 by naked-single.
pending={o5}
- o8 is 4 by naked-single.
pending={o8}
- o14 is 12 by naked-single.
pending={o14}
- o15 is 9 by naked-single.
pending={o15}
- o2 is 10 by naked-single.
pending={o2}
- k2 is 9 by naked-single.
pending={k2}
- k1 is 10 by naked-single.
pending={k1}
- m2 is 12 by naked-single.
pending={m2}
- n1 is 7 by naked-single.
pending={n1}
- n13 is 10 by naked-single.
pending={n13}
- n7 is 12 by naked-single.
pending={n7}
- i7 is 9 by naked-single.
pending={i7}
- i6 is 12 by naked-single.
pending={i6}
- o13 is 16 by naked-single.
pending={o13}
- m13 is 7 by naked-single.
pending={m13}
- m6 is 9 by naked-single.
pending={m6}
- m1 is 16 by naked-single.
pending={m1}
- p1 is 9 by naked-single.
pending={p1}
- p6 is 7 by naked-single.
pending={p6}
- p7 is 10 by naked-single.
pending={p7}
deduce.grid99. Solved.
grid99
|
| 1
| 2
| 3
| 4
| 5
| 6
| 7
| 8
| 9
| 10
| 11
| 12
| 13
| 14
| 15
| 16
|
| a
| 12
| 2
| 13
| 3
| 5
| 6
| 15
| 16
| 1
| 7
| 10
| 4
| 8
| 11
| 14
| 9
|
| b
| 14
| 6
| 15
| 16
| 9
| 2
| 11
| 12
| 13
| 8
| 5
| 3
| 4
| 7
| 1
| 10
|
| c
| 5
| 1
| 9
| 10
| 7
| 4
| 8
| 3
| 14
| 15
| 11
| 6
| 12
| 2
| 13
| 16
|
| d
| 8
| 11
| 4
| 7
| 10
| 13
| 1
| 14
| 16
| 2
| 12
| 9
| 5
| 15
| 6
| 3
|
| e
| 15
| 14
| 8
| 11
| 12
| 16
| 4
| 9
| 5
| 6
| 3
| 2
| 13
| 10
| 7
| 1
|
| f
| 13
| 16
| 5
| 12
| 3
| 15
| 14
| 7
| 9
| 10
| 8
| 1
| 6
| 4
| 11
| 2
|
| g
| 4
| 3
| 10
| 2
| 13
| 5
| 6
| 1
| 7
| 11
| 15
| 14
| 9
| 8
| 16
| 12
|
| h
| 6
| 7
| 1
| 9
| 8
| 10
| 2
| 11
| 12
| 13
| 4
| 16
| 14
| 5
| 3
| 15
|
| i
| 1
| 13
| 7
| 6
| 2
| 12
| 9
| 15
| 10
| 4
| 16
| 5
| 11
| 3
| 8
| 14
|
| j
| 2
| 15
| 11
| 4
| 6
| 14
| 16
| 10
| 3
| 12
| 7
| 8
| 1
| 9
| 5
| 13
|
| k
| 10
| 9
| 16
| 14
| 4
| 8
| 3
| 5
| 11
| 1
| 2
| 13
| 15
| 6
| 12
| 7
|
| l
| 3
| 5
| 12
| 8
| 1
| 11
| 7
| 13
| 6
| 14
| 9
| 15
| 2
| 16
| 10
| 4
|
| m
| 16
| 12
| 6
| 15
| 14
| 9
| 5
| 8
| 4
| 3
| 1
| 10
| 7
| 13
| 2
| 11
|
| n
| 7
| 8
| 3
| 5
| 16
| 1
| 12
| 2
| 15
| 9
| 13
| 11
| 10
| 14
| 4
| 6
|
| o
| 11
| 10
| 14
| 1
| 15
| 3
| 13
| 4
| 2
| 5
| 6
| 7
| 16
| 12
| 9
| 8
|
| p
| 9
| 4
| 2
| 13
| 11
| 7
| 10
| 6
| 8
| 16
| 14
| 12
| 3
| 1
| 15
| 5
|
grid99. Copying solution to raw grid.